Make gtk_printer_has_details() and gtk_printer_request_details() public.
authorMatthias Clasen <mclasen@redhat.com>
Sun, 29 Apr 2007 04:42:13 +0000 (04:42 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Sun, 29 Apr 2007 04:42:13 +0000 (04:42 +0000)
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkprinter-private.h:
        * gtk/gtkprinter.[hc]: Make gtk_printer_has_details() and
        gtk_printer_request_details() public.

        * gtk/gtkpagesetupunixdialog.c:
        * gtk/gtkprintunixdialog.c: Update callers.  (#389203,
        Christian Persch)

svn path=/trunk/; revision=17690

ChangeLog
docs/reference/ChangeLog
docs/reference/gtk/gtk-sections.txt
gtk/gtk.symbols
gtk/gtkpagesetupunixdialog.c
gtk/gtkprinter-private.h
gtk/gtkprinter.c
gtk/gtkprinter.h
gtk/gtkprintunixdialog.c

index d4d2d0787932587dcebfe8d75d0e0d9a0a51ea8e..40fdf4d3328fc55b40b03271c69c7487daa30922 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2007-04-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtk.symbols:
+       * gtk/gtkprinter-private.h:
+       * gtk/gtkprinter.[hc]: Make gtk_printer_has_details() and
+       gtk_printer_request_details() public.
+
+       * gtk/gtkpagesetupunixdialog.c:
+       * gtk/gtkprintunixdialog.c: Update callers.  (#389203, 
+       Christian Persch)
+
 2007-04-28  Matthias Clasen  <mclasen@redhat.com>
 
        * configure.in: Add --enable-test-print-backend, defaulting
index 65d951a1176f7a0d6ff37d270e079f2a6ad5c692..3d0d4beafe70e7648d0eec4479d3317985b60609 100644 (file)
@@ -1,3 +1,7 @@
+2007-04-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtk-sections.txt: Add gtk_printer_{has,request}_details
+
 2007-04-28  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/tmpl/gtkdnd.sgml: Document GTK_TARGET_OTHER_*
index a6a57c89d12ac2837e3cee52e76a7dd87cbf0e2e..8727f81f23155ee91a00120dc9a0f61a9f3db1de 100644 (file)
@@ -6214,6 +6214,8 @@ gtk_printer_accepts_ps
 gtk_printer_accepts_pdf
 gtk_printer_list_papers
 gtk_printer_compare
+gtk_printer_has_details
+gtk_printer_request_details
 GtkPrinterFunc
 gtk_enumerate_printers
 
index 1e5c35bacd6cc5a24d870113ce9d7de7a1af84dc..cc602ac5f1171637592ea7386a61a5801150480c 100644 (file)
@@ -2620,6 +2620,8 @@ gtk_printer_list_papers
 gtk_printer_accepts_pdf
 gtk_printer_accepts_ps
 gtk_printer_compare
+gtk_printer_has_details
+gtk_printer_request_details
 gtk_enumerate_printers
 #endif
 #endif
index e1cc290521e1a6bcf0a24413b42eed71e4fa3a73..4bd4a88db0a8f4a7b1b13fddadd93e174d9c3676 100644 (file)
@@ -797,7 +797,7 @@ printer_changed_callback (GtkComboBox            *combo_box,
       gtk_tree_model_get (gtk_combo_box_get_model (combo_box), &iter,
                          PRINTER_LIST_COL_PRINTER, &printer, -1);
 
-      if (printer == NULL || _gtk_printer_has_details (printer))
+      if (printer == NULL || gtk_printer_has_details (printer))
        fill_paper_sizes_from_printer (dialog, printer);
       else
        {
@@ -805,7 +805,7 @@ printer_changed_callback (GtkComboBox            *combo_box,
          priv->request_details_tag =
            g_signal_connect (printer, "details-acquired",
                              G_CALLBACK (printer_changed_finished_callback), dialog);
-         _gtk_printer_request_details (printer);
+         gtk_printer_request_details (printer);
 
        }
 
@@ -1737,7 +1737,7 @@ margins_from_printer_changed (CustomPaperDialog *data)
 
       if (printer)
        {
-         if (_gtk_printer_has_details (printer))
+         if (gtk_printer_has_details (printer))
            {
              set_margins_from_printer (data, printer);
              gtk_combo_box_set_active (combo, 0);
@@ -1748,7 +1748,7 @@ margins_from_printer_changed (CustomPaperDialog *data)
              data->request_details_tag =
                g_signal_connect (printer, "details-acquired",
                                  G_CALLBACK (get_margins_finished_callback), data);
-             _gtk_printer_request_details (printer);
+             gtk_printer_request_details (printer);
            }
 
          g_object_unref (printer);
index 568e3bc0872e7f01f0624d23f54b085fd1970e42..6bedb63c26d2a21b703eba8b274fbba3ea6eb8f9 100644 (file)
 
 G_BEGIN_DECLS
 
-gboolean             _gtk_printer_has_details               (GtkPrinter          *printer);
-void                 _gtk_printer_request_details           (GtkPrinter          *printer);
 GtkPrinterOptionSet *_gtk_printer_get_options               (GtkPrinter          *printer,
                                                             GtkPrintSettings    *settings,
                                                             GtkPageSetup        *page_setup,
-                                                            GtkPrintCapabilities capabilities);gboolean             _gtk_printer_mark_conflicts            (GtkPrinter          *printer,
+                                                            GtkPrintCapabilities capabilities);
+gboolean             _gtk_printer_mark_conflicts            (GtkPrinter          *printer,
                                                             GtkPrinterOptionSet *options);
 void                 _gtk_printer_get_settings_from_options (GtkPrinter          *printer,
                                                             GtkPrinterOptionSet *options,
index b8200b8c103f63b8217f8f22f574b6defbcbbe18..7de8ada7f3d2501156e96a581891a5a1b6c5079b 100644 (file)
@@ -582,9 +582,21 @@ gtk_printer_set_job_count (GtkPrinter *printer,
   return TRUE;
 }
 
+/**
+ * gtk_printer_has_details:
+ * @printer: a #GtkPrinter
+ * 
+ * Returns whether the printer details are available.
+ * 
+ * Return value: %TRUE if @printer details are available
+ *
+ * Since: 2.12
+ */
 gboolean
-_gtk_printer_has_details (GtkPrinter *printer)
+gtk_printer_has_details (GtkPrinter *printer)
 {
+  g_return_val_if_fail (GTK_IS_PRINTER (printer), FALSE);
+
   return printer->priv->has_details;
 }
 
@@ -727,10 +739,23 @@ gtk_printer_set_is_default (GtkPrinter *printer,
   printer->priv->is_default = TRUE;
 }
 
+/**
+ * gtk_printer_request_details:
+ * @printer: a #GtkPrinter
+ * 
+ * Requests the printer details. When the details are available,
+ * the "details-acquired" signal will be emitted on @printer.
+ * 
+ * Since: 2.12
+ */
 void
-_gtk_printer_request_details (GtkPrinter *printer)
+gtk_printer_request_details (GtkPrinter *printer)
 {
-  GtkPrintBackendClass *backend_class = GTK_PRINT_BACKEND_GET_CLASS (printer->priv->backend);
+  GtkPrintBackendClass *backend_class;
+
+  g_return_if_fail (GTK_IS_PRINTER (printer));
+
+  backend_class = GTK_PRINT_BACKEND_GET_CLASS (printer->priv->backend);
   backend_class->printer_request_details (printer);
 }
 
@@ -788,7 +813,9 @@ _gtk_printer_create_cairo_surface (GtkPrinter       *printer,
  * gtk_printer_list_papers:
  * @printer:
  * 
- * Lists all the page sizes @printer supports.
+ * Lists all the paper sizes @printer supports.
+ * This will return and empty list unless the printer's details are available, see
+ * gtk_printer_has_details() and gtk_printer_request_details().
  * 
  * Return value: a newly allocated list of newly allocated #GtkPageSetup:s.
  *
index f3050f970ef6e3f9ebe2629596e9ae729b664115..69865e418a38766f39ef5ff6b0e048301dd8f470 100644 (file)
@@ -80,9 +80,10 @@ gboolean                 gtk_printer_is_default        (GtkPrinter      *printer
 gboolean                 gtk_printer_accepts_pdf       (GtkPrinter      *printer);
 gboolean                 gtk_printer_accepts_ps        (GtkPrinter      *printer);
 GList                   *gtk_printer_list_papers       (GtkPrinter      *printer);
-
 gint                     gtk_printer_compare           (GtkPrinter *a,
                                                        GtkPrinter *b);
+gboolean                 gtk_printer_has_details       (GtkPrinter       *printer);
+void                     gtk_printer_request_details   (GtkPrinter       *printer);
 
 typedef gboolean (*GtkPrinterFunc) (GtkPrinter *printer,
                                    gpointer    data);
index e72d7c4b969e984300fcff6705c3359575753af0..0f36f5e5c36b8564c130f5fb33e705c910f684cf 100644 (file)
@@ -1245,13 +1245,13 @@ selected_printer_changed (GtkTreeSelection   *selection,
                          -1);
     }
   
-  if (printer != NULL && !_gtk_printer_has_details (printer))
+  if (printer != NULL && !gtk_printer_has_details (printer))
     {
       gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog), GTK_RESPONSE_OK, FALSE);
       priv->request_details_tag =
        g_signal_connect (printer, "details-acquired",
                          G_CALLBACK (printer_details_acquired), dialog);
-      _gtk_printer_request_details (printer);
+      gtk_printer_request_details (printer);
       g_object_unref (printer);
       return;
     }